package cyc.learn.mode.factory.ordinary;

public class SendFactory {

    public Sender produceSender(String type) throws Exception{
        if ("sms".equals(type)) {
            return new SmsSender();
        } else if ("email".equals(type)) {
            return new EmailSender();
        } else {
            System.out.println("not found sender: type = " + type);
            //方法的返回最好不要出现null，这样外部调用需要去处理空异常，如果没做处理就会报错
            // 所以这里做了一点修改，用异常的形式替换null.实际项目中可以使用项目中的自定义异常处理
            new Exception("not found sender: type = " + type);
            return null;
        }
    }
}
